package cn.uexpo.lhz.common.oldUtils;

import java.util.ArrayList;
import java.util.List;

import cn.uexpo.lhz.core.page.Param;
import lombok.Data;

/**
 * 分页请求
 */

@Data
public class PageRequest {
    /**
     * 当前页码
     */
    private int page;

    private String t;

	public String getT() {
		return t;
	}

	public void setT(String t) {
		this.t = t;
	}

	public List<Param> getParams() {
		return params;
	}

	/**
     * 每页数量
     */
    private int limit;

	public int getPage() {
		return page;
	}

	public int getLimit() {
		return limit;
	}

	public void setPage(int page) {
		this.page = page;
	}

	public void setLimit(int limit) {
		this.limit = limit;
	}


	@Override
	public String toString() {
		return "PageRequest{" +
				"page=" + page +
				", t='" + t + '\'' +
				", limit=" + limit +
				", params=" + params +
				'}';
	}

	/**
	 * 查询参数
	 */
	private List<Param> params = new ArrayList<>();

	public void setParams(List<Param> params) {
		this.params = params;
	}
	/**
	 * 查询参数对象
	 * @param name 参数名称
	 * @return
	 */
	public Param getParam(String name) {
		for(Param param:this.params) {
			if(name != null && name.equals(param.getName())) {
				return param;
			}
		}
		return null;
	}
	/**
	 * 查询参数值
	 * @param name 参数名称
	 * @return
	 */
	public String getParamValue(String name) {
		Param param = getParam(name);
		if(param != null) {
			return param.getValue();
		}
		return null;
	}


	/**
	 * 查询参数值
	 * @param name 参数名称
	 * @return
	 */
	public Object getParamObjValue(String name) {
		Param param = getParam(name);
		if(param != null) {
			return param.getObjValue();
		}
		return null;
	}


}
